package com.ruoyi.business.mapper;

import com.ruoyi.common.core.domain.entity.WsdRechargeRefund;
import com.ruoyi.common.core.domain.vo.RechargeRefundVO;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 充值退款配置Mapper接口
 * 
 * @author ruoyi
 * @date 2024-05-21
 */
public interface WsdRechargeRefundMapper 
{
    /**
     * 查询充值退款配置
     * 
     * @param configId 充值退款配置主键
     * @return 充值退款配置
     */
    public WsdRechargeRefund selectWsdRechargeRefundByConfigId(Long configId);

    /**
     * 查询充值退款配置列表
     * 
     * @param wsdRechargeRefund 充值退款配置
     * @return 充值退款配置集合
     */
    public List<WsdRechargeRefund> selectWsdRechargeRefundList(WsdRechargeRefund wsdRechargeRefund);

    /**
     * 新增充值退款配置
     * 
     * @param wsdRechargeRefund 充值退款配置
     * @return 结果
     */
    public int insertWsdRechargeRefund(WsdRechargeRefund wsdRechargeRefund);

    /**
     * 修改充值退款配置
     * 
     * @param wsdRechargeRefund 充值退款配置
     * @return 结果
     */
    public int updateWsdRechargeRefund(WsdRechargeRefund wsdRechargeRefund);

    /**
     * 删除充值退款配置
     * 
     * @param configId 充值退款配置主键
     * @return 结果
     */
    public int deleteWsdRechargeRefundByConfigId(Long configId);

    /**
     * 批量删除充值退款配置
     * 
     * @param configIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteWsdRechargeRefundByConfigIds(Long[] configIds);

    RechargeRefundVO existsActiveSemester(@Param("formattedDate") String formattedDate, @Param("schoolId") Long schoolId);

    RechargeRefundVO existsActive(@Param("end") String end, @Param("start") String start, @Param("schoolId") Long schoolId);

}
